<?php namespace Admin\Controller;

use Common\Model\Cate;
use Common\Model\Type;

//后台首页控制器
class CateController extends CommonController{
	private $db;
	private $tdb;
	//	构造函数
	public function __init(){
		
	$this->tdb=new Type;
	$this->db=new Cate;
	parent::__init();
	
	}
//载入首页
    public function index(){
//  	$a=$this->tdb;
//		p($a);die;
    	
    	$data=$this->db->orderBy('sort','DESC')->get();
		
		$data=Data::tree($data,'cname');
		
		View::with('data',$data);
//		p($data);die;
		
		
       View::make();
    }
	
//	添加
	public function add(){
		
   		
 		if(IS_POST){
//  		调用模型中的store添加方法
 			$result=$this->db->store();
			if(!$result){
//				添加错误信息
				View::error($this->db->getError());	
			}
					View::success('添加成功',U('index'));
 		}

			$typeModel=new \Common\Model\Type;
			$typeData=$typeModel->get();
//			p($typeData);
			View::with('typeData',$typeData);
		
			
		View::make();
	
	}

	
	public function addSon(){
		if(IS_POST){
//			调用模型中的store添加
			
			$result=$this->db->store();
			if(!$result){
				
				View::error($this->db->getError);
			}
			View::success('添加成功',U('index'));
		}
		
		$typeData=$this->tdb->get();
		View::with('typeData',$typeData);
		
		
		$cid=Q('get.cid',0,'intcal');
		
		$parent=$this->db->field('cid,cname')->where('cid',$cid)->find();
		
		View::with('parent',$parent);
		View::make();
	}
	
	public function del(){
		
//		获取要删除的分类ID
		$cid=Q('get.cid',0,'intval');
//		获取要删除的分类的pid
		$pid=$this->db->where('cid',$cid)->plukc('pid');
//		将它所有的子类的pid改变成要删除的父类的pid
		$data=array('pid'=>$pid);
		$this->db->where('pid',$cid)->update($data);
//		删除指定分类
		$this->db->where('cid',$cid)->delete();
//		删除成功 显示分类列表
		View::success('删除成功',U('index'));
		
		
	}
	//	分类编辑
	public function edit(){
		if(IS_POST){	
//			在页面创建隐藏域，将当前的主键分配到隐藏域中
			$result=$this->db->edit();
			if(!$result){
//				获取模型中过滤失败的错误消息
				View::error($this->db->getError());
			}
			View::success('编辑成功',U('index'));
			
		}
		
		

//		获取cid,编辑的是哪一个
		$cid=Q('get.cid',0,'intval');
		
//		获取所有原数据
		$oldData=$this->db->where('cid',$cid)->find();

		View::with('oldData',$oldData);
		
//		处理编辑的所属分类
		$parentData=$this->db->getNoMy($cid);
//		分类编辑时候不能是当前分类本身或他的子集
		View::with('parentData',$parentData);
//		将获取数据动作放到模型类中
		View::make();
	}
	
	
	
	
	
}
